// pages/stu/hw/hw.js
const app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    hwList:[],
    error:null,
  },

  chooseFile(e){

    const chw = e.currentTarget.dataset['chw'];
    const hw = e.currentTarget.dataset['hw'];
   

    wx.chooseMessageFile({
      count: 1,
      type:'file',
      success:res=>{
        const re = new RegExp(chw.u_pattern);
        
        if(!re.test(res.tempFiles[0].name)){
          this.setData({error:'文件名称格式不正确！'});
          return;
        }
        const currStudent = app.globalData.currUser;
        const filename_prefix = `${currStudent.clazz}_${currStudent.stuName}_${hw.w_name}.`
        
        if(!res.tempFiles[0].name.startsWith(filename_prefix)){
          this.setData({error:'文件名称不正确！'});
          return;
        }

        

          app.upload({
            filePath: res.tempFiles[0].path,
            name: 'hwfile',
            url:'/stu/hw/upload',
            
            formData: {
              filename: res.tempFiles[0].name,
              s_id:chw.s_id,
              w_id:hw.w_id
            }
          }).then(res=>{
             
              app.get({
                url: '/stu/hw',
                hasLoading:false
              }).then(res=>{        
                  this.setData({hwList:res.data});
              });
                            
          }).catch(result=>{
            this.setData({error:result.message});
          });

        

        
      
      }
    })
  }, 

  getHwList(){
    app.get({
      url: '/stu/hw'
    }).then(res=>{        
        this.setData({hwList:res.data});
    });
  },


  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    if(app.globalData.currUser){
      this.setData({currUser:app.globalData.currUser});
    }
    this.getHwList();
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    this.getHwList();
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})